1. Field of the Invention
The present invention relates to a fault recovery system for units of a computer system, and more particularly to an initialization system for input/output processing units of a computer system including a central processing unit, input/output processing units and a computer maintenance unit, all of which are independently installed.
2. Background of the Invention
Many recent computer systems include a computer maintenance unit, i.e., a service processor (SVP), adapted to recover from a failure occurring in the system and to acquire information on the failure in order to decrease the load on the central processing unit and the input/output processing units to thereby improve performance. An example of such a computer system is illustrated in FIG. 1. As shown, the system includes a central processing unit 1, a computer maintenance unit 2 and an input/output processing section 3 including input/output processing units and a number of input/output devices 4, each of which are connected to respective input/output processing units.
In this computer system, a dedicated recovery instruction for the input/output processing units is usually prepared in the central processing unit 1 in order to recover from failures in the input/output processing units. The instruction is issued from the central processing unit 1 to the computer maintenance unit 2, which in turn responds to the instruction to issue an input/output processing unit initializing signal to the input/output processing section 3. In general, the computer maintenance unit 2 has slow processing speed. Thus, the processes of acquiring failure information, recovering from a failure and initializing the input/output processing unit are queued in the computer maintenance unit 2 and then executed asynchronously.
If a malfunction occurs in an input/output processing unit, the input/output processing section 3 reports to the central processing unit 1 the occurrence of a malfunction by a malfunction-occurrence interruption and requests the computer maintenance unit 2 to acquire failure information (LOG). The request is temporarily entered into a process queue in the computer maintenance unit 2. That is, the request is enqueued.
FIG. 2 is a diagram illustrating a prior art system for initializing the input/output processing unit using the process queue in the computer maintenance unit. In the Figure, a request to acquire the LOG (failure information) from the input/output processing section 3 is enqueued as a request "LOG" in the process queue 5 in the computer maintenance unit 2.
The central processing unit I detects a malfunction in the input/output processing unit and then issues an instruction to recover it, i.e., a reset (RST) instruction, in a malfunction processing routine. The instruction is actually enqueued as a request to initialize the input/output processing unit (RST) in the process queue 5 in the computer maintenance unit 2. The computer maintenance unit 2 dequeues, i.e., fetches the requests from the process queue 5, one at a time for processing.
A problem with the prior art system for initializing the input/output processing units as shown in FIG. 2, i.e., the system for fetching and processing requests enqueued in the process queue 5 in the computer maintenance unit 2, is that the order of executing the processes enqueued in the process queue 5 is indeterminate. Thus, when a failure occurs in an input/output processing unit, an input/output processing unit initializing request (i.e., the RST instruction) made by the central processing unit 1 may be executed first and the acquisition of failure information from the input/output processing unit is then executed.
That is, the queuing within the process queue 5 is effected such that a request is enqueued in a vacated position of the process queue. However, where the execution of requests in the process queue is effected from the top of the queue, the initialization of the input/output processing unit may be performed first. In this case, the input/output processing unit is already initialized when the failure information is acquired. Thus, the acquired failure information is useless. Furthermore, even if the acquisition of failure information is enqueued first in the process queue 5, the initialization of the input/output processing unit may be made first because processing by the central processing unit 1 has the highest priority.